<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Avisos extends CI_Controller {
    
    public function Avisos(){
         parent::__construct(); 
        
        $this->load->model('publicar/avisos_model');
    }
	
	public function index($has_alert = FALSE, $msg_type = '', $alert_msg=''){
	    $categorias = $this->avisos_model->get_categoria_avisos();
        $main_view_data = array(
            'categorias' =>$categorias,
            "has_alert" => $has_alert,
            "msg_type" => $msg_type,
            "alert_msg" => $alert_msg,
        );
        $view = array(
           'main_view' => 'publicar/avisos',
           'main_view_data' => $main_view_data,
           'title' => 'Avisos',
           'menu' => array(
               'navbar' => 'menu/navbar_interna',
               'active_menu_item' => 'avisos'
           )
        );
        
        $this->load->view('template/template',$view);
    }
        
    public function get_aviso_por_categoria($categoria){
        $msg = "";
        $avisos = $this->avisos_model->get_aviso_por_categoria($categoria);
        $html = $this->load->view('publicar/dados_avisos', array('avisos'=>$avisos), TRUE);
        ($avisos == false) ? $msg = "falha" : $msg = "ok";
        $data = array(
            "has_alert" => FALSE,
            "msg_type" => 'success',
            "msg" => $msg,
            "html" => $html,
        );
        
        echo json_encode($data);
        return;
    }
	
    function excluir_categoria(){
        $has_alert = TRUE;
        $msg_type = '';
        $msg = '';
        $categoria = $this->input->post("categoria");
        
        error_log("categoria = ".$categoria);
        
        if($categoria == ""){
            $msg_type = 'error';
            $msg = "Nenhuma categoria selecionada, escolha uma categoria antes de clicar em excluir";
        }else{
            $msg_type = 'success';
            $msg = "Categoria excluida com sucesso!";
          $this->avisos_model->delete_categoria_aviso($categoria);
        }
        
        $this->index($has_alert,$msg_type,$msg);
    }
    
    function inserir_categoria(){
        $has_alert = TRUE;
        $msg_type = '';
        $msg = '';
        $categoria_nome = $this->input->post("nome");
        
        $categoria_id = $this->avisos_model->inserir_categoria_aviso(array('categoria_nome'=>$categoria_nome));
        
        
        if(!$categoria_id){
            $msg_type = 'error';
            $msg = "Categoria Não cadastrada";
        }else{
            $msg_type = 'success';
            $msg = "Categoria inserida com sucesso!";
        }
        
        $this->index($has_alert,$msg_type,$msg);
        
    }
    
    function editar_categoria(){
        $has_alert = TRUE;
        $categoria_id = $this->input->post("categoria_id");
        $categoria_nome = $this->input->post("categoria_nome");
       
       $linhas_afetadas = $this->avisos_model->editar_categoria_aviso($categoria_nome, $categoria_id);
       
       if($linhas_afetadas > 0){
           $msg_type = 'success';
            $msg = "Categoria alterada com sucesso!";
       }else{
           $msg_type = 'error';
           $msg = "Erro ao editar categoria, certifique-se de escolher uma categoria antes de editar";
       }
       
       $this->index($has_alert,$msg_type,$msg);
    }
    
    public function publicar_aviso(){
        $has_alert = TRUE;
        $descricao = $this->input->post("titulo");
        $categoria = $this->input->post("categoria");
        $prioridade = $this->input->post("prioridade");
        $conteudo = $this->input->post("conteudo");
        $usuario = $this->session->userdata('id');
     
        $data = array(
        "categoria" => $categoria,
        "usuario_id" =>$usuario,
        "descricao" =>$descricao,
        "Conteudo"=> $conteudo,
        "prioridade" => $prioridade
        
        );
        
        $insert_id = $this->avisos_model->inserir_aviso($data);
        
        if($insert_id){
             $msg_type = 'success';
             $msg = "Aviso publicado com sucesso!";
        }else{
           $msg_type = 'error';
           $msg = "Erro ao publicar aviso";
        }
        $this->index($has_alert,$msg_type,$msg);
    }
    
    function excluir_aviso(){
        $has_alert = TRUE;
        $aviso = $this->input->post("aviso");
        $linhas_afetadas = $this->avisos_model->delete_aviso($aviso);
        
        if($linhas_afetadas){
             $msg_type = 'success';
             $msg = "Aviso excluido com sucesso!";
        }else{
           $msg_type = 'error';
           $msg = "Erro ao excluir aviso";
        }
        $this->index($has_alert,$msg_type,$msg);
        return;
    }
		
}


/* End of file publicar.php */
/* Location: ./application/controllers/publish/publicar.php */
	